package org.pray.open;

/**
 * CoderWithLiskOV
 *
 * @author 春江花朝秋月夜
 * @since 2024/2/12 21:15
 */
public abstract class CoderWithLiskOV {
    // 里氏替换原则要求对父类的继承不能覆盖父类的方法（能力），实际上是对父类作出的要求
    public abstract void code();// 父类 定义敲代码能力但不实现
    // public void code(){System.out.println("Coding with computer!")};
    // //父类定义敲代码能力但实现，假若子类重写将覆盖，不符合里氏替换原则

    class JavaCoder extends CoderWithLiskOV {

        @Override
        public void code() {
            System.out.println("Coding with Java!");
        }

        public void rap() {
            System.out.println("I can sing ,jump and rap!!!");// 拓展能力
        }
    }

}
